
// FlowField Extractor
//	+ Depth
//
//		extremer
#pragma once

#include "ETF.h"

class FlowFieldExtractor
{
public:
	FlowFieldExtractor();
	virtual ~FlowFieldExtractor();

	void Init( const char* lpszImageFile );
	struct _IplImage* GenerateImageWithETF()
	{ return GenerateImageWithETF( m_field ); };
	struct _IplImage* GenerateImageWithETF( class ETF& etf );

	struct _IplImage* GenFDoG(imatrix& image, ETF& etf);
	struct _IplImage* GenFBL(struct _IplImage* pCVImage, ETF* etf);

	struct _IplImage* CalculateDepth(imatrix& mat);

private:
	ETF		m_field;
};